home *** CD-ROM | disk | FTP | other *** search
/ Megahits 6 / Megahits 6 (1995)(GTI - Rhein-Main-Soft)(DE)(Disc 2 of 2)[!].iso / time_ungepackt / time_361_390 / time_367 / db.lzh / ARexx / Verknüpfen.rexx < prev   
OS/2 REXX Batch file  |  1994-01-31  |  2KB  |  56 lines

  1. /****************************************************************************
  2.  * Verknüpfen von Dateien, PSEUDOCODE                        *
  3.  * Dies soll ein Skript-Gerüst sein, um Verknüpfungen zwischen Dateien zu   *
  4.  * realisieren. Mittels ARexx ist das sehr flexibel möglich. Eine direkte   *
  5.  * Programmfunktion könnte nur einen sehr begrentzen Bereich abdecken.        *
  6.  * Mit Hilfe dieses Skriptes und dem ARexx-Abschnitt aus der Anleitung        *
  7.  * sollte es auch der ARexx-Neuling schaffen.                    *
  8.  * Es sind mehrere Umsetzungsmöglichkeiten vorhanden. Diese geht davon aus, *
  9.  * daß die Datei, in welche Daten aus anderen Dateien übernommen werden     *
  10.  * sollen, geladen und die aktuelle ist. Die anderen Dateien werden zeit-   *
  11.  *  weise geladen und die Daten ausgelesen.                    *
  12.  *                                        *
  13.  * 05.01.94, Jörg Richter                            *
  14.  ****************************************************************************/
  15.  
  16. Options Results          /* Rückgabewerte sollen gespeichert werden */
  17.  
  18. ADDRESS DATABASE                  /* Auf Database-Port schalten */
  19.  
  20. CurrentBase                     /* Aktuelle Base-Nummer in der */
  21. oldbase = RC                      /* Variablen "oldbase" merken */
  22.  
  23. Base 5                        /* Auf die 5. Base schalten */
  24.          /* Achtung! Eine evtl. dort vorhandende Datei geht erloren */
  25.                   /* Dies könnte auch abgefangen werden ... */
  26.  
  27.                 /* Nacheinander werden die Dateien geladen, */
  28. Open <Dateiname und Pfad>
  29. IF RC ~= 0 THEN EXIT 5        /* Datei konnte nicht geladen werden => Abbruch */
  30.  
  31.  /* Nun kann ein bestimmter Datensatz angesprungen oder z.B. gesucht werden */
  32.  /* Z.B. soll aus dem letzten Datensatz ein berechnete Summe gelesen werden */
  33. RightTotal                        /* an das Ende springen */
  34. GetData $F5                /* den Inhalt aus z.B. Feld 5 lesen */
  35. Summe = result                  /* in der Varibalen "Summe" speichern */
  36. Close                         /* die Datei wieder schliessen */
  37.  
  38.   /* Hier könnten nun weitere Dateien folgen, die wie oben behandelt werden */
  39.   /* Z.B. : */
  40. Open <Dateiname und Pfad>
  41. IF RC ~= 0 THEN EXIT 5
  42. RightTotal
  43. GetData $F3
  44. Anzahl = result
  45. Close
  46.  
  47.  
  48. Base oldbase           /* Züruck zur ursprünglichen Datei, in der die Daten */
  49.                      /* zusammen getragen werden sollen */
  50. ADD                        /* Neuen Datensatz erzeugen */
  51. PutData $F1 Summe   /* Schreiben der gelesenden Daten in die entsprechenden */
  52. PutData $F2 Anzahl          /* Felder der Maske des aktuellen Datensatzes */
  53.  
  54. ADDRESS
  55.  
  56.